home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Generous Efforts of Many
/
gemcd.zip
/
GEM.CD.A.po
/
FEATURES:BEAGLE
/
UTIL.CITY.SHK
/
UTILITY.CITY
/
LINE SEARCH.A.bas
< prev
next >
Wrap
BASIC Source File
|
2000-01-01
|
2KB
|
20 lines
5 ONERR GOTO 170
10 TFS = 256:CL = -958:HEX$ = "0123456789ABCDEF": TEXT : HOME : INVERSE : PRINT " APPLESOFT LINE SEARCH ";: NORMAL : PRINT " BY BEAGLE BROS.":HT = 23:G$ = CHR$(7)
20 ST = 768:PST = PEEK(ST) + PEEK(ST +1) *TFS:PND = PEEK(103) + PEEK(104) *TFS -1
30 PRINT : PRINT "PROGRAM START: ";PST;:X = PST: GOSUB 150: PRINT "PROGRAM END: ";PND;:X = PND: GOSUB 150:HT = 17
40 PRINT "---------------------------------------": POKE 34,5
50 LS = PST
60 HTAB 24: PRINT "(0 = QUIT)";: HTAB 1: INPUT " LINE TO FIND: ";LFIND: VTAB PEEK(37): CALL -868: PRINT " LINE: ";LFIND;: IF LFIND >65535 THEN HTAB 1: CALL -868: PRINT G$;: GOTO 60
65 IF LFIND = 0 THEN 170
70 X = LFIND: GOSUB 150: PRINT " SEARCH:";
80 X1 = PEEK(LS) + PEEK(LS +1) *TFS:X2 = PEEK(LS +2) + PEEK(LS +3) *TFS: HTAB HT -7: PRINT X2;
90 IF X1 = 0 OR LS >PND OR X2 >LFIND THEN HTAB 1: PRINT " (NOT FOUND)";: CALL CL: PRINT : GOTO 120
100 IF X2 = LFIND THEN HTAB 1: CALL -868: PRINT " START: ";LS;:X = LS: GOSUB 150: PRINT " END: ";:EN = PEEK(LS) + PEEK(LS +1) *TFS -1: PRINT EN;:X = EN: GOSUB 150: GOTO 120
110 LS = X1: GOTO 80
120 NORMAL : PRINT "---------------------------------------": CALL -868
135 PRINT : GOTO 140
140 VTAB PEEK(37): CALL -868: GOTO 50
150 NLO = X - INT(X/TFS) *TFS:NHI = INT(X/TFS):X = NLO: GOSUB 160:H1$ = A$:H2$ = B$:X = NHI: GOSUB 160:H3$ = A$:H4$ = B$: HTAB HT: PRINT "$";H3$;H4$;H1$;H2$: RETURN
160 LO = X - INT(X/16) *16:HI = INT(X/16):A$ = MID$ (HEX$,HI +1,1):B$ = MID$ (HEX$,LO +1,1): RETURN
170 POKE 34,0: POKE 216,0:ST = 768: POKE 103, PEEK(ST): POKE 104, PEEK(ST +1): POKE 175, PEEK(ST +2): POKE 176, PEEK(ST +3): END
65535 REM <CTRL-M><CTRL-M>==============<CTRL-M>LINE SEARCH<CTRL-M>BY BEAGLE BROS<CTRL-M>==============